# Maintainer: Bruno Pagani <archange@archlinux.org>
# Contributor: Anatol Pomozov
# Contributor: Tim Hütz <tim@huetz.biz>
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Sebastien Binet <binet@cern.ch>

_pkg=mpi4py
pkgname=python-${_pkg}
pkgver=3.1.4
pkgrel=3
pkgdesc="Python bindings for the Message Passing Interface (MPI) standard"
arch=(loong64 x86_64)
url="https://github.com/mpi4py/mpi4py"
license=(BSD)
depends=(python openmpi)
makedepends=(python-setuptools cython)
checkdepends=(inetutils)
source=(https://files.pythonhosted.org/packages/source/${_pkg::1}/${_pkg}/${_pkg}-${pkgver}.tar.gz)
sha256sums=('17858f2ebc623220d0120d1fa8d428d033dde749c4bc35b33d81a66ad7f93480')

build() {
    cd ${_pkg}-${pkgver}
    python setup.py build
}

check() {
    # This is required starting with OpenMPI 3.0 when trying to run more
    # processes than the number of available cores
    export OMPI_MCA_rmaps_base_oversubscribe=yes
    # We don’t have CUDA by default
    export OMPI_MCA_opal_warn_on_missing_libcuda=0

    cd ${_pkg}-${pkgver}
    local python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))')
    PYTHONPATH="${PWD}"/build/lib.linux-$CARCH-cpython-${python_version/./} python setup.py test
}

package() {
    cd ${_pkg}-${pkgver}
    python setup.py install --root="${pkgdir}" --skip-build --optimize=1
    install -Dm644 LICENSE.rst -t "${pkgdir}"/usr/share/licenses/${pkgname}/
}
